草庐IT

c++ - 实现安全的 nullptr

全部标签

c# - 为什么这个对象的类型通过反射显示没有接口(interface),尽管至少实现了两个?

首先,一个按预期工作的示例:(所有代码都在VS2008即时窗口中执行)25isIComparable>>true25.GetType().GetInterfaces()>>{System.Type[5]}>>[0]:{Name="IComparable"FullName=...>>[1]:{Name="IFormattable"FullName=...>>...到目前为止一切顺利。现在让我们尝试一个通过基类型继承接口(interface)的对象:classTestBase:IComparable{publicintCompareTo(objectobj){thrownewNotImpl

c# - app.config 文件是存储密码的安全位置吗?

我需要在代码中存储secret密码。我不能使用哈希技术,因为需要密码本身。如何将这些数据安全地存储在app.config文件中?还有其他方法可以安全地完成此操作吗?DPAPI和ProtectDataClass不是一个选项,因为key是系统特定的,例如:连接字符串不能以这种方式为不同的最终用户系统存储。 最佳答案 您可以使用DPAPI(数据保护API)来加密配置文件的某些部分。您的代码仍将使用ConfigurationManager并且解密将由框架处理。有关相同内容的更多信息,请参阅此模式和实践文档HowTo:EncryptConfi

c# - 如何实现 StringBuilder 和/或调用 String.FastAllocateString?

我很想知道我是否可以创建一个优化版本的StringBuilder(尝试稍微加快它的速度,因为它目前是我的一个应用程序的瓶颈)。对我来说不幸的是,它似乎利用了我无法使用(或者看起来如此)的“神奇”系统调用。反编译System.Text.StringBuilder的源代码后,我注意到它使用了以下内部(因此无法调用)系统调用:[SecurityCritical][MethodImpl(MethodImplOptions.InternalCall)]internalstaticstringFastAllocateString(intlength);还有这个未记录的属性被大量使用:[ForceT

c# - 为什么这个赋值不是线程安全的?

我一直在阅读JosephAlbahari关于线程的这本书:http://www.albahari.com/threading/在第2部分中,我找到了这个示例:http://www.albahari.com/threading/part2.aspx#_When_to_Lock这是前面提到的例子:classThreadUnsafe{staticint_x;staticvoidIncrement(){_x++;}staticvoidAssign(){_x=123;}}线程安全版本:classThreadSafe{staticreadonlyobject_locker=newobject();

c# - 为什么 C# 6.0 中的单例实现不需要 beforefieldinit 标志?

我试图理解为什么这是单例模式的正确实现:publicsealedclassSingleton:ISingleton{publicstaticSingletonInstance{get;}=newSingleton();privateSingleton(){}//methods}beforefieldinit标志怎么样?根据JonSkeetarticle:Thelazinessoftypeinitializersisonlyguaranteedby.NETwhenthetypeisn'tmarkedwithaspecialflagcalledbeforefieldinit.Unfortu

c# - 我们如何使用 Cake build 对安全的 NuGet 服务器进行身份验证?

我们正致力于使用CakeBuild自动化我们的构建,我们使用来自nuget.org的NuGet包,但我们也有我们自己的NuGetFeed服务器,它有一个用户名/密码身份验证来访问。我们如何将CakeBuild与带有身份验证的自定义NuGet源服务器一起使用? 最佳答案 Cake使用NuGet.exe安装工具、插件和NuGet别名。除非您在#tool/#addin指令中指定了源或提供给NuGet别名,否则NuGet.exe将在当前路径中查找nuget.config并最终以当前用户全局设置(%AppData%\NuGet\NuGet.c

c# - 如何使用每个实现的附加参数/信息实现接口(interface)

我的MVCwebapp允许用户添加和删除图像。UI在我的业务层中调用ImageService.SaveImage(...),它在内部使用一个标志来告诉方法保存到Azure或文件系统。我最终可能会将S3添加到我认为这里的接口(interface)会很好用。这就是我想象中的代码在我的ImageService类中的样子。它不关心文件的保存方式或位置。//ServicetheUIusespublicstaticclassImageService{publicstaticvoidSaveImage(byte[]data,IImageProviderimageProvider){stringfil

c# - 通过 T4 代码生成自动 INotifyPropertyChanged 实现?

我目前正在设置我的一个新项目,并且想知道我如何才能实现我的ViewModel类确实具有INotifyPropertyChanged支持,而不必自己手动编写所有属性。我研究了AOP框架,但我认为它们只会用另一个依赖项破坏我的项目。所以我考虑使用T4生成属性实现。设置是这样的:我有一个ViewModel类,它仅声明其属性背景变量,然后我使用T4从中生成属性实现。例如,这将是我的ViewModel:publicpartialclassViewModel{privatestringp_SomeProperty;}然后T4将遍历源文件并查找名为“p_”的成员声明并生成如下文件:publicpar

c# - 在 ASP.Net Web 应用程序数据层中实现静态方法是否安全?

我正在开发一个Web应用程序,它是一个B2B门户应用程序。我的应用程序遵循2层架构。下面是一段代码,将公司注册到我的网站//////RegisterCompanywiththebusinessbazaar/////////publicstaticboolRegisterCompany(Registrationregistration){boolresult;using(varhelper=newDbHelper()){_commandText="sp_RegisterCompany";varsuccess=newSqlParameter("@Success",SqlDbType.Bit

c# - 具有 2 个实现相同接口(interface)的类的 IOC/DI

我对实现相同接口(interface)和依赖注入(inject)的2个类的场景感到困惑。publicinterfaceISomething{voidDoSomething();}publicclassSomethingA:ISomething{publicvoidDoSomething(){}}publicclassSomethingAB:ISomething{publicvoidDoSomething(){}}publicclassDifferent{privateISomethingThisSomething;publicDifferent(ISomethingSomething)